home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ASME's Mechanical Engine…ing Toolkit 1997 December
/
ASME's Mechanical Engineering Toolkit 1997 December.iso
/
basic
/
qbuddy21.lzh
/
QBUDDY.DOC
< prev
next >
Wrap
Text File
|
1988-04-20
|
12KB
|
275 lines
"QBUDDY"
Joe Lincoln ⌐ LINX BBS ⌐ (713) 440⌐7364 ⌐ Houston, Texas
OTHER STUFF:
PILOT MASTER (PM21)
FLIGHT SIMULATOR ADVENTURES (FSADV200)
FLIGHT SIMULATOR PILOT (FSP2⌐1)
HAMPAC5
Demonstration source code for Q-BASIC 4.0 (only) & ADVBAS40.
ADVBAS40 library put out by Thomas Hanlin III, is a public
domain library that you must have to use QBUDDY.
I sure want to thank Mr. Hanlin. I've enjoyed his library more
than any other and I have so much more to learn. He provides
a great set of docs with ADVBAS40 and it's well worth the effort
to print it. I bound mine with TLC and it already looks like a
16th century antique book. Well worn. Also, be sure to read up
on PROBASIC in his docs. WOW! Sure wish I had $99.00.
I would also like to thank a couple of fellow sysops, CHEZBO and
TED B. for introducing me to QB4.0. They "nail" me for lousy
spelin. Course i dont kare, kause QB4 fix da boo-boos.
To load QBUDDY...
QB QBUDDY /L ADVBAS
Shft F5 (Run)
Anyway, Q-BUDDY is just a collection of working routines that
sorta demonstrates how QB4.0 and the ADVBAS 4.0 work and you are
welcome to use the code in your own programs if you find it
useful and subject to any claims by Mr. Hanlin and Microsoft. (I
guess) I don't expect anything. No guarantees on freebies.
Since I will be adding routines as I work on the upgrade
projects, I will try to update QBUDDY and post the updates in
this "History" file. I am also building a library from the
ADVBASand GIZLIB libraries along with many of my other favorite
routines. So, for what it's worth, or not worth, here's QBUDDY.
3-14-88 Version 1.0 : QBUDDY1.ARC
First release. Some modules not complete.
SUBS WORKING: (See ADVBAS40 DOCS for more info.)
fclose fopen
SetFattr fcreate
fread GetAttrF
setdrv setsub
getdrv getsub
getkbd getdosv
FindNextF FindFirstF
equipment makewindow
tyme menu
box box.text
center rsmg
CreateFile AppendFile
PrintFile CreateFile
3-16-88 Version 1.1 QBUDDY11.ARC
Corrupted docs - QBUDDY11.BAS okay
3⌐16⌐88 Version 1.2 QBUDDY12.ARC
Worked on the CLIENT FILE routines. Made some cosmetic changes.
The CLIENT file routine is a simple indexed random access routine
with a couple of good features. The code is not as tight as I
want so I'll be working on this routine which is going to
develop into a small ACCOUNTS RECEIVABLE module. A lot of the
code is converted QBASIC so paragraphing will done as soon as
possible. It works, but it's gonna work better.
QBUDDY has a routine to CREATE a new CLIENT data base. If you
want to set up this feature then select the Utilities Menu and
FORMAT NEW CLIENT DISK/DIR. I just created a directory C:\CLIENT
and then formatted the directory using QBUDDY. Actually, you can
name the directory anything you want and change the config file
QBUDDY.DAT from the Utilities menu. This directory simply handles
record pointers and client file data with an A-Z index. When you
create this directory it will set up for 12 fields of fixedlength
(later to be user set) for a total of 2000 records (easy to
change).
3-24-88 Version 1.3 QBUDDY13.ARC
Really beefed up the editor routine "joekey." The best example of
it's use is in the NEW config routine. It handles all of the
cursor control keys and presents a nice user-friendly editing
string.
I didn't put in the CLIENT ACCOUNTING package this go-round. It
is complete and makes extensive use of the editor in this version of
QBUDDY. It now has 16 fields of data and maintains an aging-type
of ACCOUNTS RECEIVABLE with automatic data/date manipulation.
I'll install this feature in QBUDDY 1.4 which should be ready in a day
or so.
Still plugging away at the text editor. It's no wonder good code is
unavailable. Writing this stuff almost hurts.
YOU WILL HAVE TO create a new QBUDDY.DAT file or use the one in
the arced file. The fields have changed. The create routine is REMed
out about line 60.
And...so it goes.
CLIENT FILE
record length = 156
LAST NAME = 20
FIRST NAME = 20
STREET = 20
CITY = 17
STATE = 2 (Presently ALL ASCII)
ZIP = 10
TELE1 = 13
TELE2 = 13
CONTRACT TOTAL = 10
PAID = 10
BALANCE = 10
DUE DATE = 11
When the directory is created, a dummy file and record pointers
take up the first 2 files. You can use client record numbers from
3 to 9999. A nice little feature is a search by LAST NAME/FIRST
LETTER. For example, if you have more than 1 Smith in your client
data base and you forget the correct number for the account,
simply enter the first letter of the last name and asearch will
print the Smith(s) at the bottom of the screen. Then choose the
correct client number. A full scale q-sort and scan will be
installed soon. However, present access time is quite fast.
When you ADD a record, a rec.pointer% is incremented +1 and when
you DELETE a record the pointer is decreased -1.
There are probably buggars in this thing, but nothing serious.
The fields will be changing as the ACCT PAY routine is developed.
Since this module must interface with some information being used
in another program, the final code will be either single point,
floating point, ASCII, or who knows.
Where this thing is going...
A fairly sophisticated TEXT EDITOR will be installed to handle
the follow types of routines:
Search and replace Create/Edit/Amend/Delete
Custom "DUN" letters Custom (matrix) INVOICES
Custom Printer Codes Large printer selection
User defined Macros (?) File conversion (dBase)
QBASIC to QB4 converter Valleygirl type routines
User dictionary/thesaurus Mail label - Zip sort
Internal ARCHIVAL SYSTEM (PK TYPE ROUTINE)
PRTSCRN ⌐ Fast screen/windowing
Anyway, for what it's worth...here's version 1.2 of QBUDDY.
================================
3-23-84 Version 1.4 QBUDDY14.ARC
================================
QBUDDYSU.BAS SetUp Program
QBUDDY14.BAS Accounts Receivable
QBUDDY.DAT SetUp File
xxxxxxx.PRN Some Printer Files
Blame it on the ozone layer. Well, QBUDDY has developed a little
further than expected so here's some poop!
There are now 2 files necessary to run QBUDDY if you want to use
the setup program. All the setup pgm does is maintain a file
called QBUDDY.DAT and show off a few of the ADVBAS directory
handling routines. You can list the variables and find out what
is being stored in the data file. It's all ASCII. This handles
screen colors, directory paths, formatting new client files and a
few other goodies. It would probably be best for you to remove
the REM lockouts at about line 60 of QBUDDYSU. That way you can
initialize the parameters you want for default directories. I
have included a NEW QBUDDY.DAT file so you can get it running.
I guess that the best new feature is a super little cursor
control editor that sure is user friendly. It handles the
entering and editing of data with ease using all of the controls
available such as PgDn, PgUp, Larrow, Rarrow, Esc, Home, Del,
End, Ins, etc. The "KEY" variable in the routine is PROMPT$ which
must be massaged after every entry. This helps eliminate possible
loss of data and does a few calculations along the way.
I haven't finished the routine, but it is usable and CHEZBO and
TED B. have kept me honest to update QBUDDY.
Setup now allows you to edit parms with the new editing routine.
It also allows you to set the number of records when formatting a
new data disk. (WHICH, YOU HAVE TO DO - The old one ain't no
good.) I try to keep the number low so I don't waste a bunch of
(sob) disk space. The previous QBUDDY fixed the number at 2000. A
dummy record is stored in #2 and a file pointer is stored in #1.
Users can choose from 3 to ...outer-space!
I'm still pluggin' away at the text editor. Just wanted to drop
something in the mail. Should have another update in about a
week.
So, for what it's worth...
===========================
APRIL 20, 1988 - QBUDDY 2.1
===========================
SET-UP MODULE ONLY CHANGE
The major changes are better error trapping, creation and maintenance of 3
data files, enhanced cosmetics, file copy, DOS SHELL copy and Drive trap,
additional printer install code (custom code entry/retrieval) , more hardware
and directory information. The program "traps" and allows you to create ALL
initial parameter files if they are missing. They are supplied with this ARC.
TC.OVL (Use file anyway you want)
AC.OVL (Use file anyway you want)
AMPARM.DAT (Sets user preferences)
QBUDDY21.BAS (The SETUP program ONLY)
QBACCT.BAS (The ACCOUNTING module ONLY)
APPLE.PRN
FX100.PRN
FX80.PRN (Individual Printer Files)
TOSH1340.PRN Sequential now...
HPLJII.PRN Going to Random...
I'm still struggling with what should be a simple problem; the reading of TAB
strings (user set) for each printer type. I haven't found any source code for
dealing with a lot of printers and I don't really know the best way to
proceed. My ultimate printing command requirements are going to be significant
and I suppose there are .asm files out there for most popular printers. I just
don't have them..(hint, hint, pant, pant, slobber, drool...) Right now, if you
seperate your string entries with a "\", the string filter replaces these with
","'s. Somehow, the resultant string has to be interpreted to properly tab the
text.
Decided to put a compiled version in for a quick looksee. Sorry for the
increased size and DL time. I think I trapped most of the "missing" config
files. Try running the .EXE on a new floppy without any OVL or DAT files. If
it goes "south" on you, just press the "N" key and it should recover.
I really like the way Hanlin's EXIST, FINDFIRSTF, FINDNEXTF routines
internally trap file errors. It makes it soooo easy to recover with specific,
user friendly, traps. In fact, error recovery is a snap with all of Hanlin's
stuff.
If I keep this mess up (and, it's doubtful), I will include the new ACCOUNTING
module with the next release. This thing includes some pretty handy code for
maintaining a large client data base, contract agreement accounting with 30-
60-90 day aging, end-of-month updating, search, replace and print. The last
version (QBUDDY14) was really rough. Sorry. The next release will be much more
refined and complete. This SETUP program will still work with the earlier
release of the ACCOUNTING code. Fopen, Fclose, Fread, Fsetend, etc. are used
as well as a pretty nice Indexed Data base.
If it goes up in smoke...blame it on tube worms.